var express = require('express');
var router = express.Router();
const { query } = require('../db');
const app = express()
//通过json这个中间件解析json格式的数据
app.use(express.json())
//通过使用urlencoded解码数据
app.use(express.urlencoded({ extended: false }));


//获取酒店服务类目
router.post('/kefangfuwutoos', async function (req, res, next) {
    // 
    var sql = `select * from kefangfuwutoos  `;
    // 查询数据库
    var result = await query(sql).catch(next)
    // 返回数据
    if (result) {
        res.json({
            code: 200,
            data: result,
          
        })
    } else {
        res.json({
            code: -9999,
            msg: "系统错误"
        })
    }
})

// 获取客房服务列表
router.post('/kefangfuwu', async function (req, res, next) {
    // 
    var user_type=req.body.user_type;
    var user_accout=req.body.user_accout;

    var sql;

    if(user_type==0){
        sql = `select * from kefangfuwu where user_accout='${user_accout}' `;
    }else{
        sql = `select * from kefangfuwu`;
    }

    // 查询数据库
    var result = await query(sql).catch(next)
    // 返回数据
    if (result) {
        res.json({
            code: 200,
            data: result,
          
        })
    } else {
        res.json({
            code: -9999,
            msg: "系统错误"
        })
    }
})

// 时间格式函数
function dateFormat(fmt, date) {
    let ret;
    const opt = {
        "Y+": date.getFullYear().toString(),        // 年
        "m+": (date.getMonth() + 1).toString(),     // 月
        "d+": date.getDate().toString(),            // 日
        "H+": date.getHours().toString(),           // 时
        "M+": date.getMinutes().toString(),         // 分
        "S+": date.getSeconds().toString()          // 秒
        // 有其他格式化字符需求可以继续添加，必须转化成字符串
    };
    for (let k in opt) {
        ret = new RegExp("(" + k + ")").exec(fmt);
        if (ret) {
            fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
        };
    };
    return fmt;
}

// 添加
router.post('/add', async function (req, res, next) {
    // 获取参数 号 状态 价格
    var type_name=req.body.type_name;
    var states=0;
    var user_accout=req.body.user_accout;
    var user_name=req.body.user_name;
    var dates_=dateFormat("YYYY-mm-dd HH:MM:SS", new Date());
    // 先判断有没有预约房间
    var check_sql=`select * from subscriberoom where user_accout='${user_accout}'`;
    var check_result=await query(check_sql).catch(next);
    if(!check_result || check_result.length<=0){
        res.json({
            code:500,
            msg:"请您先预约房间"
        })
        return false
    }

    // 
    var sql= `INSERT INTO kefangfuwu(dates_,type_name,states,user_accout,user_name) VALUES('${dates_}','${type_name}','${states}','${user_accout}','${user_name}')`;
    var result= await query(sql).catch(next);

    // 返回数据
    if (result) {
        res.json({
            code: 200,
            msg: "添加成功!"
        })
    } else {
        res.json({
            code: -9999,
            msg: "系统错误"
        })
    }
})

// 查看流程

// 修改状态
router.post('/edit', async function (req, res, next) {
    // 获取参数
    var id = Number(req.body.id);
    var states=req.body.states;
     var jujue_liyou=req.body.jujue_liyou;
     var dates_=dateFormat("YYYY-mm-dd HH:MM:SS", new Date());
     var fuwu_user_name=req.body.fuwu_user_name;
     if(states==1){
        var sql_sucess=`UPDATE kefangfuwu SET fuwu_user_name='${fuwu_user_name}', fuuw_times='${dates_}', states='${states}'  where id=${id} `;
        var success_res=await query(sql_sucess).catch(next);
         
        if (success_res) {
            res.json({
                code: 200,
                msg: "修改成功!"
            })
        } else {
            res.json({
                code: -9999,
                msg: "系统错误"
            })
        }
     }else{
        // 拒绝
        var sql_fail=`UPDATE kefangfuwu SET fuwu_user_name='${fuwu_user_name}', jujue_liyou='${jujue_liyou}', fuuw_times='${dates_}', states='${states}'  where id=${id} `;
        var fail_res=await query(sql_fail).catch(next);

        if (fail_res) {
            res.json({
                code: 200,
                msg: "修改成功!"
            })
        } else {
            res.json({
                code: -9999,
                msg: "系统错误"
            })
        }
     }

    // var sql = `UPDATE kefangfuwu SET states='${states}'  where id=${id} `;
    // UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
    // 查询数据库
    // var result = await query(sql).catch(next)
    // 返回数据
   
})


// 修改客房服务状态




module.exports = router;

